454. 四数相加 II

454. 四数相加 II

Similar Question

leading to the advanced question

Solution Tips

方案一: 分组 + 哈希

符合条件的元祖, 是可以任意两两组合的

p9HMQOg.png

var fourSumCount = function(A, B, C, D) {
    const countAB = new Map();
    A.forEach(u => B.forEach(v => countAB.set(u + v, (countAB.get(u + v) || 0) + 1)));
    let ans = 0; 
    for (let u of C) {
        for (let v of D) {
            if (countAB.has(-u - v)) {
                ans += countAB.get(-u - v);
            }
        }
    }
    return ans;
};